Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

ПРОГРАМУВАННЯ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2012
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Програмування
Група:
КІ

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра ЕОМ / ЗВІТ до лабораторної роботи № 4 з дисципліни " Системне програмування" Львів – 2012 Тема: ПРОГРАМУВАННЯ СПІВПРОЦЕСОРА З ВИКОРИСТАННЯМ КОМАНД ОБЧИСЛЕННЯ ТРАНСЦЕНДЕНТНИХ ФУНКЦІЙ ТА РЕАЛІЗАЦІЯ РОЗГАЛУЖЕНЬ ПРИ ПОРІВНЯННІ ДАНИХ ДІЙСНОГО ТИПУ. Мета: познайомитися з принципами роботи математичного співпроцесора і використати його можливості для обчислення трансцендентних функцій та реалізації розгалужень. ЗАВДАННЯ 1. Створити *.exe програму, яка реалізовує обчислення, заданого варіантом виразу. Вхідні дані повинні вводитися з клавіатури, під час виконання програми в десятковому форматі зі знаком. Програма повинна складатися з двох модулів: головний модуль – створюється мовою С і має забезпечити ввід необхідних даних, виклик асемблерної процедури для обчислення виразу та вивід результату обчислень; модуль безпосередніх обчислень – здійснює всі необхідні арифметичні дії з використанням математичного співпроцесора; 2.Переконатися у правильності роботи кожного модуля зокрема та програми загалом. 3.Скласти звіт про виконану роботу з приведенням тексту програми та коментарів до неї. 4.Дати відповідь на контрольні запитання. ВАРІАНТИ ЗАВДАНЬ 5    Код програми: Main.cpp #include <stdio.h> #include <math.h> extern "C" void calc(void); extern "C" { float X=0; float A=0; float Cv=0; float D=0; float Y=0; }; int main() { printf("Please, enter X:\n"); printf("A = "); scanf_s("%f",&A); printf("C = "); scanf_s("%f",&Cv); printf("D = "); scanf_s("%f",&D); if (Cv>D){ if(log(1-A/4)<=0){ printf("ERROR: Ln <=0 ne dopystumuy\n"); } else{ calc(); printf("X = %.4f\n",X); } } if (D>=Cv){ if(Cv-tan(A/2)==0){ printf("ERROR: Dilennya na 0 nemojlyve!\n"); } else{ calc(); printf("X = %.4f\n",X); } } return 0; }  Calc.asm .586 .model flat,C .data EXTRN X:DWORD, A:DWORD, Cv:DWORD, D:DWORD .data tmp dd 0 .code calc PROC finit fld Cv fcomp D fstsw ax sahf ja _bilshe jmp _menshe _bilshe: mov tmp,2 fild tmp fld Cv fmul fld D mov tmp,23 fild tmp fdiv fsub FLDLN2 mov tmp,1 fild tmp fld A mov tmp,4 fild tmp fdiv fsub FYL2X fdiv jmp _kinets _menshe: mov tmp,4 fild tmp fld Cv fmul fld D fadd mov tmp,1 fild tmp fsub fld Cv fld A mov tmp,2 fild tmp fdiv fptan fmul fsub fdiv _kinets: fstp X ret calc endp end     Результат виконання: C>D / C<=D / Висновок: На даній лабораторній роботі оволодів навиками створення програм, частини яких написані різними мовами програмування Засвоїв правила взаємодії різних модулів.
Антиботан аватар за замовчуванням

11.12.2012 20:12

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини